/*            Copyright(c) 2006-2008 Dave Sexton           *
 * http://www.codeplex.com/DocProject                      *
 * http://www.codeplex.com/DocProject/Project/License.aspx *
 ***********************************************************/
using System;
using System.Collections.Generic;
using System.Text;
using System.ComponentModel;

namespace DaveSexton.DocProject.DeploymentSandcastle
{
	[Flags, TypeConverter(typeof(EnumFlagsConverter)), BooleanValues("Deploy", "Skip")]
	public enum DeploymentContentTypes
	{
		[Description("Nothing is deployed.")]
		None = 0,

    [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Chm")]
		[FlagDisplayName("Help 1.x (.chm)"), Description("The .chm file is deployed.")]
		Chm = 1,
    [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Hxs")]
		[FlagDisplayName("Help 2.x (.HxS)"), Description("The .HxS file is deployed.")]
		Hxs = 2,

		[FlagDisplayName("Help project files"),
		Description("Supporting files for compiled help are deployed; e.g., .hhp, .hhc, .hhk, .HxC, .HxT, .HxF, .HxK.")]
		HelpProject = 4,

		[FlagDisplayName("Html folder"),
		Description("The Html folder and all of its contents are deployed.")]
		Html = 8,
		[FlagDisplayName("Html2 folder"),
		Description("The Html2 folder and all of its contents are deployed.")]
		Html2 = 16,

		[FlagDisplayName("Code files"),
		Description("All files with an extension of .cs for C# projects, .vb for VB.NET projects and .js for J# projects are deployed.")]
		Code = 32,

		[FlagDisplayName("ASP.NET files"),
		Description("All files with an .aspx, .ascx or .asmx extension are deployed.")]
		AspNet = 64,

		[FlagDisplayName("Project output files"),
		Description("All files in the project's assembly output directory (bin) are deployed.")]
		ProjectOutput = 128,

		[FlagDisplayName("DocSite output files"),
		Description("DocSiteContents.xml and DocSiteIndex.xml are deployed.")]
		DocSiteOutput = 256,

		[FlagDisplayName("All build output"),
		Description("All build output is deployed.")]
		AllBuildOutput = Chm | Hxs | HelpProject | Html | Html2 | ProjectOutput | DocSiteOutput,

		[Description("All deployable content is deployed.")]
		All = Chm | Hxs | HelpProject | Html | Html2 | Code | AspNet | ProjectOutput | DocSiteOutput
	}
}
